Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch block labels to natural language #231

Merged
merged 6 commits into from
Sep 26, 2024
Merged

Switch block labels to natural language #231

merged 6 commits into from
Sep 26, 2024

Conversation

manuq
Copy link
Contributor

@manuq manuq commented Sep 25, 2024

Eg. use "Remove" instead of "Queue Free".

Also, remove the "On physics process" block. This is confusing since for the default project settings the _process runs at the same pace.

https://phabricator.endlessm.com/T35563

Eg. use "Remove" instead of "Queue Free".

Also, remove the "On physics process" block. This is confusing since for
the default project settings the _process runs at the same pace.

https://phabricator.endlessm.com/T35563
The labels have changed "body" by "something" so the blocks holding the
"body" variable have dissapeared.
@@ -10,8 +10,8 @@ description = ""
category = "Communication | Methods"
type = 1
variant_type = 0
display_template = "On [body: OBJECT] entered"
code_template = "func _on_body_entered(body: Node2D):
display_template = "When entering collision with [something: OBJECT]"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like the "entering collision with" / "leaving collision with" pair. I don't think collisions are something you leave. It's awkward to phrase this because we don't have a subject

Brainstorming:

  • When colliding with [something] / When no longer colliding with [something]
  • When this node collides with [something] / When this node stops colliding with [something]
  • When collision with [something] starts / When collision with [something] ends
  • When [something] collides with this node / When [something] stops colliding with this node

Not sure I like these much better…

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the second one of those; "When this node collides with / stops colliding with [something]". Alternatively, we could write these in the first person, like "When I collide with", which I think is the nicest to read here but stylistically it's tricky because we don't want to be writing everything in first person.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good point, should we switch everything to first person? Ie. "Remove me" instead of "Remove"? I'm open to do it.

description = "Attached blocks will be executed during the processing step of the main loop"
category = "Lifecycle"
type = 1
variant_type = 0
display_template = "On Process"
display_template = "Every frame"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we going to consistently use Sentence case rather than Title case for blocks?

I checked what MakeCode Arcade does and actually it uses lower case!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I proposed lower case once to the other Will. Today we have a mix of Title case for short labels ("Viewport Center") and Sentence case for long labels. I just checked and Scratch has all in lower case too. So unless anyone has a strong argument I'll switch all to lower case.

- The display template in resource files.
- The display template in blocks defined dynamically for properties.
- The display template in blocks for the simple nodes.
- The true and false booleans.
- The options in dropdowns.

https://phabricator.endlessm.com/T35563
@manuq
Copy link
Contributor Author

manuq commented Sep 26, 2024

Ready for review again. I think that the switch to lower case makes the label much more readable inside blocks.

Copy link
Member

@wjt wjt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this would be fine but now all the block names are in the diff it's easier to review the others :)

addons/block_code/blocks/input/characterbody2d_move.tres Outdated Show resolved Hide resolved
addons/block_code/blocks/input/is_input_actioned.tres Outdated Show resolved Hide resolved
addons/block_code/blocks/loops/await_scene_ready.tres Outdated Show resolved Hide resolved
@@ -10,7 +10,7 @@ description = "Generate a random floating point number between [i]from[/i] and [
category = "Math"
type = 3
variant_type = 3
display_template = "Random floating point number between {from: FLOAT} and {to: FLOAT}"
display_template = "random floating point number between {from: FLOAT} and {to: FLOAT}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A question for another day, but, do students know what "floating point number" means? Would "real number" be better understood?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that we should remove one of these random number blocks and have a single "random number between X and Y". What I'm not sure about is which one should survive, the one for floats or the one for ints. Let's do that as follow-up.

addons/block_code/blocks/sounds/play_sound.tres Outdated Show resolved Hide resolved
@dsd
Copy link
Member

dsd commented Sep 26, 2024

I think this would be fine but now all the block names are in the diff it's easier to review the others :)

If/when we're looking at English language optimization can we check the animation player blocks text please (I think it had something like "play animation ahead" which can maybe be improved).

@manuq
Copy link
Contributor Author

manuq commented Sep 26, 2024

I think this would be fine but now all the block names are in the diff it's easier to review the others :)

If/when we're looking at English language optimization can we check the animation player blocks text please (I think it had something like "play animation ahead" which can maybe be improved).

Yes, is "play animation forward" better?

@manuq
Copy link
Contributor Author

manuq commented Sep 26, 2024

@wjt @dylanmccall this is ready for review again.

Copy link
Member

@wjt wjt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@wjt wjt merged commit a91d31d into main Sep 26, 2024
3 checks passed
@wjt wjt deleted the T35563-natural-language branch September 26, 2024 14:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants